-- *****************************************************************
-- Juniper-SDX-DES-MIB
--
-- Juniper Networks Inc.
-- Juniper Management Center MIB
--
Juniper-SDX-DES-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY,
    OBJECT-TYPE,
    Integer32,
    Counter32,
    Gauge32,
    TimeTicks
        FROM SNMPv2-SMI

    DisplayString
        FROM SNMPv2-TC

    MODULE-COMPLIANCE,
    OBJECT-GROUP
        FROM SNMPv2-CONF

    juniSdxMibs
        FROM Juniper-SDX-MIBS

    JuniSdxDesDirectoryType
        FROM Juniper-SDX-TC-MIB;

juniSdxDesMib MODULE-IDENTITY
    LAST-UPDATED "200308111100Z"  -- 08-Aug-03

    ORGANIZATION "Juniper Networks, Inc."
    CONTACT-INFO
        "        Juniper Technical Assistance Center
                 Juniper Networks, Inc.
                 1194 N. Mathilda Avenue
                 Sunnyvale, CA 94089
                 E-mail: support@juniper.net"

    DESCRIPTION
        "MIB of the SDX DES "

    REVISION "200308111100Z"  -- 08-Aug-03
    DESCRIPTION
    "Minor Syntax updates"

    REVISION "200211011600Z"  -- 1-Nov-02
    DESCRIPTION
    "
    DES TABLE:

    juniSdxDesAvgReadTime   -> Gauge32
    juniSdxDesAvgWriteTime  -> Gauge32
    juniSdxDesReads         -> Counter32
    juniSdxDesWrites        -> Counter32
    juniSdxDesEvents        -> Counter32

    Removed juniSdxDesIndex from Conformance
    Corrected spelling mistake in  juniSdxDesEvents
    description
    "

    REVISION "200210251600Z"  -- 25-Oct-02
    DESCRIPTION
    "Revision info updated."


    ::= { juniSdxMibs 5 }

juniSdxModuleId OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
    "Table of DES MI-derived entries."
    ::= { juniSdxDesMib 1 }

juniSdxMgmtInterface OBJECT IDENTIFIER ::= { juniSdxDesMib 2 }

--
-- Obsolete Des Table
--

    juniSdxObsDesTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF JuniSdxObsDesEntry
        MAX-ACCESS  not-accessible
        STATUS      obsolete
        DESCRIPTION
        "Table of DES MI-derived entries."
        ::= { juniSdxMgmtInterface 1 }

    juniSdxObsDesEntry OBJECT-TYPE
        SYNTAX      JuniSdxObsDesEntry
        MAX-ACCESS  not-accessible
        STATUS      obsolete
        DESCRIPTION
        "A table entry describing DES MI. This table
         has one index: juniSdxObsDesIndex."
        INDEX   { juniSdxObsDesIndex }
        ::= { juniSdxObsDesTable 1 }

    JuniSdxObsDesEntry ::= SEQUENCE
    {
        juniSdxObsDesIndex                            Integer32,
            juniSdxObsDesConnectionId                     DisplayString,
        juniSdxObsDesHost                             DisplayString,
        juniSdxObsDesPort                             Integer32,
        juniSdxObsDesType                             JuniSdxDesDirectoryType,
        juniSdxObsDesLastDirFailureTime               TimeTicks,
        juniSdxObsDesLastPrimaryRestoreTime           TimeTicks,
        juniSdxObsDesAvgReadTime                      Gauge32,
        juniSdxObsDesAvgWriteTime                     Gauge32,
        juniSdxObsDesReads                            Counter32,
        juniSdxObsDesWrites                           Counter32,
        juniSdxObsDesEvents                           Counter32
    }

    juniSdxObsDesIndex OBJECT-TYPE
        SYNTAX      Integer32 (0..10000)
        MAX-ACCESS  not-accessible
        STATUS      obsolete
        DESCRIPTION
        "An Index for the DES MI table."
        ::= { juniSdxObsDesEntry 1 } 

    juniSdxObsDesConnectionId OBJECT-TYPE
        SYNTAX     DisplayString
        MAX-ACCESS read-only
        STATUS     obsolete
        DESCRIPTION
        "This is a textual ID to represent unique instances of a DES
         connection."
        ::= { juniSdxObsDesEntry 2 }

    juniSdxObsDesHost OBJECT-TYPE
        SYNTAX     DisplayString
        MAX-ACCESS read-only
        STATUS     obsolete
        DESCRIPTION
        "The current directory host identifier."
        ::= { juniSdxObsDesEntry 3 }

    juniSdxObsDesPort OBJECT-TYPE
        SYNTAX      Integer32 (0..65535)
        MAX-ACCESS  read-only
        STATUS      obsolete
        DESCRIPTION
        "The current directory port identifier."
        ::= { juniSdxObsDesEntry 4 }

    juniSdxObsDesType OBJECT-TYPE
        SYNTAX      JuniSdxDesDirectoryType
        MAX-ACCESS  read-only
        STATUS      obsolete
        DESCRIPTION
        "The current directory connection type."
        ::= { juniSdxObsDesEntry 5 }

    juniSdxObsDesLastDirFailureTime OBJECT-TYPE
        SYNTAX      TimeTicks
        MAX-ACCESS  read-only
        STATUS      obsolete
        DESCRIPTION
        "The last time the DES had to switch from one of
         its configured directories (primary or backup )
         to another because of connection failure."
        ::= { juniSdxObsDesEntry 6 }

    juniSdxObsDesLastPrimaryRestoreTime OBJECT-TYPE
        SYNTAX      TimeTicks
        MAX-ACCESS  read-only
        STATUS      obsolete
        DESCRIPTION
        "The last time the DES detected that the primary was
         again available and switched back to it."
        ::= { juniSdxObsDesEntry 7 }

    juniSdxObsDesAvgReadTime OBJECT-TYPE
        SYNTAX      Gauge32
        UNITS       "milliseconds"
        MAX-ACCESS  read-only
        STATUS      obsolete
        DESCRIPTION
        "The moving average directory response time for 
         read queries over the last n queries."
        ::= { juniSdxObsDesEntry 8 }

    juniSdxObsDesAvgWriteTime OBJECT-TYPE
        SYNTAX     Gauge32
        UNITS      "milliseconds"
        MAX-ACCESS read-only
        STATUS     obsolete
        DESCRIPTION
        "The moving average directory response time for 
         write queries over the last n queries."
        ::= { juniSdxObsDesEntry 9 }

    juniSdxObsDesReads OBJECT-TYPE
        SYNTAX     Counter32
        MAX-ACCESS read-only
        STATUS     obsolete
        DESCRIPTION
        "The total number of directory read queries performed
         since this connection was established."
        ::= { juniSdxObsDesEntry 10 }

    juniSdxObsDesWrites OBJECT-TYPE
        SYNTAX     Counter32
        MAX-ACCESS read-only
        STATUS     obsolete
        DESCRIPTION
        "The total number of directory write queries performed
         since this connection was established."
        ::= { juniSdxObsDesEntry 11 }

    juniSdxObsDesEvents OBJECT-TYPE
        SYNTAX     Counter32
        MAX-ACCESS read-only
        STATUS     obsolete
        DESCRIPTION
        "The total number of directory events generated since this 
         connection was established."
        ::= { juniSdxObsDesEntry 12 }

--
-- Des Table
--

    juniSdxDesTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF JuniSdxDesEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
        "Table of DES MI-derived entries."
        ::= { juniSdxMgmtInterface 2 }

    juniSdxDesEntry OBJECT-TYPE
        SYNTAX      JuniSdxDesEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
        "A table entry describing DES MI. This table
         is indexed by juniSdxDesClientIndex and juniSdxDesIndex.
         juniSdxDesClientIndex is the number of slot on which the
         Des client is running."
        INDEX   { juniSdxDesClientIndex,
                  juniSdxDesIndex }
        ::= { juniSdxDesTable 1 }

    JuniSdxDesEntry ::= SEQUENCE
    {
        juniSdxDesClientIndex                      Integer32, 
        juniSdxDesIndex                            Integer32,
            juniSdxDesConnectionId                     DisplayString,
        juniSdxDesHost                             DisplayString,
        juniSdxDesPort                             Integer32,
        juniSdxDesType                             JuniSdxDesDirectoryType,
        juniSdxDesLastDirFailureTime               TimeTicks,
        juniSdxDesLastPrimaryRestoreTime           TimeTicks,
        juniSdxDesAvgReadTime                      Gauge32,
        juniSdxDesAvgWriteTime                     Gauge32,
        juniSdxDesReads                            Counter32,
        juniSdxDesWrites                           Counter32,
        juniSdxDesEvents                           Counter32
    }

    juniSdxDesClientIndex OBJECT-TYPE
        SYNTAX      Integer32 (0..10000)
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
        "The number of slot on which the Des client is running."
        ::= { juniSdxDesEntry 1 }

    juniSdxDesIndex OBJECT-TYPE
        SYNTAX      Integer32 (0..10000)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
        "An Index for the DES MI table."
        ::= { juniSdxDesEntry 2 } 

    juniSdxDesConnectionId OBJECT-TYPE
        SYNTAX     DisplayString
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
        "This is a textual ID to represent unique instances of a DES
         connection."
        ::= { juniSdxDesEntry 3 }

    juniSdxDesHost OBJECT-TYPE
        SYNTAX     DisplayString
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
        "The current directory host identifier."
        ::= { juniSdxDesEntry 4 }

    juniSdxDesPort OBJECT-TYPE
        SYNTAX      Integer32 (0..65535)
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
        "The current directory port identifier."
        ::= { juniSdxDesEntry 5 }

    juniSdxDesType OBJECT-TYPE
        SYNTAX      JuniSdxDesDirectoryType
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
        "The current directory connection type."
        ::= { juniSdxDesEntry 6 }

    juniSdxDesLastDirFailureTime OBJECT-TYPE
        SYNTAX      TimeTicks
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
        "The last time the DES had to switch from one of
         its configured directories (primary or backup )
         to another because of connection failure."
        ::= { juniSdxDesEntry 7 }

    juniSdxDesLastPrimaryRestoreTime OBJECT-TYPE
        SYNTAX      TimeTicks
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
        "The last time the DES detected that the primary was
         again available and switched back to it."
        ::= { juniSdxDesEntry 8 }

    juniSdxDesAvgReadTime OBJECT-TYPE
        SYNTAX      Gauge32
        UNITS       "milliseconds"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
        "The moving average directory response time for 
         read queries over the last n queries."
        ::= { juniSdxDesEntry 9 }

    juniSdxDesAvgWriteTime OBJECT-TYPE
        SYNTAX     Gauge32
        UNITS      "milliseconds"
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
        "The moving average directory response time for 
         write queries over the last n queries."
        ::= { juniSdxDesEntry 10 }

    juniSdxDesReads OBJECT-TYPE
        SYNTAX     Counter32
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
        "The total number of directory read queries performed
         since this connection was established."
        ::= { juniSdxDesEntry 11 }

    juniSdxDesWrites OBJECT-TYPE
        SYNTAX     Counter32
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
        "The total number of directory write queries performed
         since this connection was established."
        ::= { juniSdxDesEntry 12 }

    juniSdxDesEvents OBJECT-TYPE
        SYNTAX     Counter32
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
        "The total number of directory events generated since this 
         connection was established."
        ::= { juniSdxDesEntry 13 }


-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
--
-- Conformance information
--
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

juniSdxDesCompliances  OBJECT IDENTIFIER ::= { juniSdxDesMib 3 }
juniSdxDesGroups       OBJECT IDENTIFIER ::= { juniSdxDesMib 4 }

-- compliance statements

juniSdxDesCompliance MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
                "The compliance statement for entities which implement
                the SDX MIB."
        MODULE  -- this module
                MANDATORY-GROUPS { juniSdxDesGroup }
        ::= { juniSdxDesCompliances 1 }

juniSdxDesGroup OBJECT-GROUP
    OBJECTS {  
              juniSdxDesClientIndex,
              juniSdxModuleId,
              juniSdxDesConnectionId,
              juniSdxDesHost,
              juniSdxDesPort,
              juniSdxDesType,
              juniSdxDesLastDirFailureTime,
              juniSdxDesLastPrimaryRestoreTime,
              juniSdxDesAvgReadTime,
              juniSdxDesAvgWriteTime,
              juniSdxDesReads,
              juniSdxDesWrites,
              juniSdxDesEvents
    }
    STATUS  current
    DESCRIPTION
        "A collection of management objects pertaining
        to system management capabilities in SDX. (DES)"
        ::= { juniSdxDesGroups 1 }

juniSdxDesObsoleteGroup OBJECT-GROUP
    OBJECTS{   
             juniSdxObsDesConnectionId,
             juniSdxObsDesHost,
             juniSdxObsDesPort,
             juniSdxObsDesType,
             juniSdxObsDesLastDirFailureTime,
             juniSdxObsDesLastPrimaryRestoreTime,
             juniSdxObsDesAvgReadTime,
             juniSdxObsDesAvgWriteTime,
             juniSdxObsDesReads,
             juniSdxObsDesWrites,
             juniSdxObsDesEvents
                       
    }
    STATUS  obsolete
    DESCRIPTION
        "A collection of obsolete management objects pertaining
        to system management capabilities in SDX. (DES)"
        ::= { juniSdxDesGroups 2 }
        
END